package com.view;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

@ManagedBean
@ViewScoped
@SuppressWarnings("serial")
public class StockView implements Serializable {

	private Long id;

	private ProveedorView proveedor;
	private ProductoView producto;
	private Double cantidad;
	private Date fechaDeIngreso;
	private Date fechaUltimoMovimiento;
	private List<MovimientoStockView> listaMovimientoStockView;
	private DepositoView deposito;
	private ClienteView cliente;

	public StockView(Long id, ProveedorView proveedor, ProductoView producto,
			Double cantidad, Date fechaDeIngreso, Date fechaUltimoMovimiento,
			List<MovimientoStockView> listaMovimientoStockView,
			DepositoView deposito, ClienteView cliente) {
		this.id = id;
		this.proveedor = proveedor;
		this.producto = producto;
		this.cantidad = cantidad;
		this.fechaDeIngreso = fechaDeIngreso;
		this.fechaUltimoMovimiento = fechaUltimoMovimiento;
		this.listaMovimientoStockView = listaMovimientoStockView;
		this.deposito = deposito;
		this.cliente = cliente;
	}

	public StockView() {
		this(null, null, null, null, null, null,
				new ArrayList<MovimientoStockView>(), new DepositoView(),
				new ClienteView());
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public ProveedorView getProveedor() {
		return proveedor;
	}

	public void setProveedor(ProveedorView proveedor) {
		this.proveedor = proveedor;
	}

	public ProductoView getProducto() {
		return producto;
	}

	public void setProducto(ProductoView producto) {
		this.producto = producto;
	}

	public Double getCantidad() {
		return cantidad;
	}

	public void setCantidad(Double cantidad) {
		this.cantidad = cantidad;
	}

	public Date getFechaDeIngreso() {
		return fechaDeIngreso;
	}

	public void setFechaDeIngreso(Date fechaDeIngreso) {
		this.fechaDeIngreso = fechaDeIngreso;
	}

	public Date getFechaUltimoMovimiento() {
		return fechaUltimoMovimiento;
	}

	public void setFechaUltimoMovimiento(Date fechaUltimoMovimiento) {
		this.fechaUltimoMovimiento = fechaUltimoMovimiento;
	}

	public List<MovimientoStockView> getListaMovimientoStockView() {
		return listaMovimientoStockView;
	}

	public void setListaMovimientoStockView(
			List<MovimientoStockView> listaMovimientoStockView) {
		this.listaMovimientoStockView = listaMovimientoStockView;
	}

	public DepositoView getDeposito() {
		return deposito;
	}

	public void setDeposito(DepositoView deposito) {
		this.deposito = deposito;
	}

	public ClienteView getCliente() {
		return cliente;
	}

	public void setCliente(ClienteView cliente) {
		this.cliente = cliente;
	}

}
